package com.ctg.itrdc.sysmgr.permission.core.dto;

import java.io.Serializable;
import java.sql.Timestamp;
import java.util.List;

public class OrganizationDTO implements Serializable {
	private static final long serialVersionUID = 1598179584838497003L;
	
	private Long sysPostId;

	public Long getSysPostId() {
		return sysPostId;
	}
	public void setSysPostId(Long sysPostId) {
		this.sysPostId = sysPostId;
	}

	private Boolean hasChildren;
	
	public Boolean getHasChildren() {
		return hasChildren;
	}
	public void setHasChildren(Boolean hasChildren) {
		this.hasChildren = hasChildren;
	}
	
	private List<OrganizationDTO> nodes;
	public List<OrganizationDTO> getNodes() {
		return nodes;
	}

	public void setNodes(List<OrganizationDTO> nodes) {
		this.nodes = nodes;
	}
	
	/**
	 * 电信组织标识主键
	 */
	private Long orgId;

	/**
	 * 电信组织小类,LOVB，“内部组织”又分为：集团公司、省级公司、地市分公司、区县分公司、营服中心等。
	 */
	private String orgSubtype;

	/**
	 * 销售点编码
	 */
	private String salesorgCode;

	/**
	 * 参与人标识,参与人唯一标识
	 */
	private Long partyId;

	/**
	 * 电信组织名称
	 */
	private String orgName;

	/**
	 * 创建人
	 */
	private Long createStaff;

	/**
	 * 电信组织类型,LOVB,内部组织、外部组织
	 */
	private String orgType;

	/**
	 * 修改时间
	 */
	private Timestamp updateDate;

	/**
	 * 城乡标志,LOVB,城市、农村、综合
	 */
	private String villageFlag;

	/**
	 * 电信组织级别,从0开始,0级为最高级
	 */
	private Integer orgLevel;

	/**
	 * 电信组织状态时间
	 */
	private Timestamp statusDate;

	/**
	 * 是否划小机构
	 */
	private Short divorgFlag;

	/**
	 * 租户标识。
	 */
	private Long tenantId;

	/**
	 * 公用管理区域标识,记录区域唯一标识
	 */
	private Long commonRegionId;

	/**
	 * 分片键1，固定值-1。
	 */
	private Long shard1;

	/**
	 * 修改人
	 */
	private Long updateStaff;

	/**
	 * 分片键2，固定值-1。
	 */
	private Long shard2;

	/**
	 * 电信组织状态
	 */
	private String statusCd;

	/**
	 * 上级组织标识,直接记录组织的直接管理上级标识
	 */
	private Long parentOrgId;

	/**
	 * 电信组织编码
	 */
//	@NotBlank
	private String orgCode;

	/**
	 * 创建时间
	 */
	private Timestamp createDate;

	/**
	 * 电信组织排序号，同一级别组织的排序号，主要用于组织机构树展示先后排序
	 */
	private Integer orgIndex;


	public void setOrgId(Long orgId){
		this.orgId = orgId;
	}

	public Long getOrgId(){
		return this.orgId;
	}

	public void setOrgSubtype(String orgSubtype){
		this.orgSubtype = orgSubtype;
	}

	public String getOrgSubtype(){
		return this.orgSubtype;
	}

	public void setSalesorgCode(String salesorgCode){
		this.salesorgCode = salesorgCode;
	}

	public String getSalesorgCode(){
		return this.salesorgCode;
	}

	public void setPartyId(Long partyId){
		this.partyId = partyId;
	}

	public Long getPartyId(){
		return this.partyId;
	}

	public void setOrgName(String orgName){
		this.orgName = orgName;
	}

	public String getOrgName(){
		return this.orgName;
	}

	public void setCreateStaff(Long createStaff){
		this.createStaff = createStaff;
	}

	public Long getCreateStaff(){
		return this.createStaff;
	}

	public void setOrgType(String orgType){
		this.orgType = orgType;
	}

	public String getOrgType(){
		return this.orgType;
	}

	public void setUpdateDate(Timestamp updateDate){
		this.updateDate = updateDate;
	}

	public Timestamp getUpdateDate(){
		return this.updateDate;
	}

	public void setVillageFlag(String villageFlag){
		this.villageFlag = villageFlag;
	}

	public String getVillageFlag(){
		return this.villageFlag;
	}

	public void setOrgLevel(Integer orgLevel){
		this.orgLevel = orgLevel;
	}

	public Integer getOrgLevel(){
		return this.orgLevel;
	}

	public void setStatusDate(Timestamp statusDate){
		this.statusDate = statusDate;
	}

	public Timestamp getStatusDate(){
		return this.statusDate;
	}

	public void setDivorgFlag(Short divorgFlag){
		this.divorgFlag = divorgFlag;
	}

	public Short getDivorgFlag(){
		return this.divorgFlag;
	}

	public void setTenantId(Long tenantId){
		this.tenantId = tenantId;
	}

	public Long getTenantId(){
		return this.tenantId;
	}

	public void setCommonRegionId(Long commonRegionId){
		this.commonRegionId = commonRegionId;
	}

	public Long getCommonRegionId(){
		return this.commonRegionId;
	}

	public void setShard1(Long shard1){
		this.shard1 = shard1;
	}

	public Long getShard1(){
		return this.shard1;
	}

	public void setUpdateStaff(Long updateStaff){
		this.updateStaff = updateStaff;
	}

	public Long getUpdateStaff(){
		return this.updateStaff;
	}

	public void setShard2(Long shard2){
		this.shard2 = shard2;
	}

	public Long getShard2(){
		return this.shard2;
	}

	public void setStatusCd(String statusCd){
		this.statusCd = statusCd;
	}

	public String getStatusCd(){
		return this.statusCd;
	}

	public void setParentOrgId(Long parentOrgId){
		this.parentOrgId = parentOrgId;
	}

	public Long getParentOrgId(){
		return this.parentOrgId;
	}

	public void setOrgCode(String orgCode){
		this.orgCode = orgCode;
	}

	public String getOrgCode(){
		return this.orgCode;
	}

	public void setCreateDate(Timestamp createDate){
		this.createDate = createDate;
	}

	public Timestamp getCreateDate(){
		return this.createDate;
	}

	public void setOrgIndex(Integer orgIndex){
		this.orgIndex = orgIndex;
	}

	public Integer getOrgIndex(){
		return this.orgIndex;
	}

	public Long getId() {
		return orgId;
	}
	
	public void setId(Long id) {
		this.orgId = id;
	}
    
	public OrganizationDTO() {
		super();
    }
}
